package org.dromara.netbar.domain;

import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;

/**
 * 网吧商品库存流水对象 netbar_product_stock_log
 *
 * @author Lion Li
 * @date 2025-08-21
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("netbar_product_stock_log")
public class NetbarProductStockLog extends TenantEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 流水ID
     */
    @TableId(value = "log_id")
    private Long logId;

    /**
     * 商品ID
     */
    private Long productId;

    /**
     * 仓库ID
     */
    private Long warehouseId;

    /**
     * 变动类型（1入库 2出库 3调拨 4盘点 5损耗 6初始）
     */
    private String changeType;

    /**
     * 变动数量（正数增加，负数减少）
     */
    private Long changeCount;

    /**
     * 当前库存（变动后的真实库存）
     */
    private Long currentStock;

    /**
     * 关联单据号
     */
    private String relatedOrder;

    /**
     * 批次号
     */
    private String batchNo;

    /**
     * 供应商ID
     */
    private Long supplierId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 版本号
     */
    @Version
    private Long version;

    /**
     * 删除标志
     */
    @TableLogic
    private String delFlag;


}
